package com.tbvtc.agriculturalcreditchainserver2025.exception;


import com.tbvtc.agriculturalcreditchainserver2025.utils.RUtils;
import com.tbvtc.agriculturalcreditchainserver2025.utils.Result;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

@ControllerAdvice
//可以集中处理异常
public class GlobalExceptionHandler {
     //后面的参数表示要处理什么异常
    //如果处理的异常多了可以写好几个方法都加上这个注解
//    @ExceptionHandler(Exception.class)
//    //表示返回值 转换为json返回
//    @ResponseBody
//    public Result error(Exception e){
//        e.printStackTrace(); // 打印异常信息
////        return Result.fail();
//    }
//
//    @ExceptionHandler(leaseException.class)
//    //表示返回值 转换为json返回
//    @ResponseBody
//    public Result error(leaseException e){
//        e.printStackTrace();
//        return Result.fail(e.getCode(),e.getMessage());
//    }

    @ExceptionHandler(FoodException.class)
    @ResponseBody
    public Result error(FoodException e){
        e.printStackTrace();
        return RUtils.Err(e.getCode(),e.getMessage());
    }
}